package com.one.blocks.jdbc.meta;

import lombok.Data;

/**
 * @author <a href="mailto:idler41@163.con">linfuxin</a> created on 2024-07-16 20:04:21
 */
@Data
public class ColumnMeta {
    /**
     * 库名
     */
    private String dbName;

    /**
     * 表名
     */
    private String tableName;

    /**
     * 字段是否为主键
     */
    private Boolean identity;

    /**
     * 表列名 如: create_time
     */
    private String columnName;

    /**
     * 获取列类型 如：VARCHAR(32)
     */
    private String columnType;

    /**
     * 获取列类型 如：VARCHAR
     */
    private String typeName;

    /**
     * jdbcType
     */
    private Integer jdbcType;

    /**
     * 精度
     */
    private Integer precision;

    /**
     * 标度
     */
    private Integer scale;

    /**
     * 是否非空
     * jdbc规范IS_NULLABLE列返回Int,但很多主流数据库并没有遵守规范，比如mysql、pgsql、oracle返回字符串"NO"(不同版本可能有差异)
     */
    private Object nullable;

    /**
     * 列备注 如: 创建时间
     */
    private String comment;
}
